In a real-time analytics system, various front-end applications provide customer transaction data directly to an analytical software application that is capable of executing analytical tasks. An example of such an analytical software application is a prediction application that provides useful, predictive output relating to a transaction with a customer. An analytical software application is capable of processing real-time data from a customer to execute analytical tasks and to generate output in real time. In many instances, the analytical software application will use the real-time data in coordination with a data mining model to generate a predictive output. A data mining model typically contains rules and patterns derived from historical data that has been collected, synthesized, and formatted. In many instances, a predictive output generated upon execution of an analytical task is fed into a business rule engine. The business rule engine will use the predictive output in conjunction with its rule set to determine if certain events should be triggered in a given front-end application. For example, the business rule engine may determine that a special promotional offer should be provided to a particular customer given the content of the predictive output and the nature of the transaction with that customer. In some instances, the front-end applications may directly process the predictive output.
Certain front-end software applications often need to maintain direct interfaces to the analytical software applications to provide the real-time customer data for execution of analytical tasks. In maintaining these interfaces, the front-end software applications are required to have detailed knowledge of the specific types of analytical software applications and data mining models that are used. For example, a front-end application may need to provide specific input information that is specific to the type of analytical engine that hosts a given analytical software application. Front-end applications also directly exchange input and output data with these analytical software applications, and this data often has specialized formats that are associated with the specific analytical software applications that are utilized.